home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1999 #2 / Amiga Plus CD - 1999 - No. 2.iso / System-Boost / Workbench / Archive / ViewDiz / ViewDiz-extras / S / PlayTune
Encoding:
Text File  |  1998-11-09  |  2.4 KB  |  142 lines

  1. . $VER: PlayTune 1.2 (23.9.98) Mikael Lund
  2. .key MODULE,PAUSE/S,NEXT/S,EJECT/S,QUIT/S,QUIET/S
  3. .bra {
  4. .ket }
  5.  
  6. ;--- Config Part ---
  7.  
  8. Set MODULEPATH   "Sys:Music/Tunes/"
  9. Set HIPPOPATH    "Sys:Music/HippoPlayer/"
  10.  
  11. Set POWERPLAYER  "Sys:Music/PowerPlayer"
  12. Set MULTIPLAYER  "Sys:Music/MultiPlayer/Player" ; By Bryan Ford
  13. Set MULTI_PLAYER "Sys:Music/Multi_Player"       ; By Thomas Landspurg
  14.  
  15. ;--- Init Part ---
  16.  
  17. Failat 21
  18. If {QUIET}
  19.   Set OUT "NIL:"
  20. Else
  21.   Set OUT "**"
  22. Endif
  23.  
  24. Echo >$OUT "PlayTune 1.1 Copyright © 1998 Mikael Lund"
  25. Assign >NIL: old{$$}: ""
  26. Path >NIL: Sys:RexxC add
  27.  
  28. If {PAUSE}
  29.   If val $PLAYTUNE eq 0
  30.     Rx >$OUT Playtune.Rexx PLAY
  31.     If not warn
  32.       SetEnv PLAYTUNE 1
  33.     Endif
  34.   Else
  35.     Rx >$OUT Playtune.Rexx STOP
  36.     If not warn
  37.       SetEnv PLAYTUNE 0
  38.     Endif
  39.   Endif
  40.   Skip end
  41. Endif
  42.  
  43. If {NEXT}
  44.   Rx >$OUT Playtune.Rexx NEXT
  45.   Skip end
  46. Endif
  47. If {EJECT}
  48.   Rx >$OUT Playtune.Rexx EJECT
  49.   Skip end
  50. Endif
  51. If {QUIT}
  52.   Rx >$OUT Playtune.Rexx QUIT
  53.   Skip end
  54. Endif
  55.  
  56. If >NIL: {MODULE}
  57.  Set INPUT {MODULE}
  58. Else
  59.  If {QUIET}
  60.    Skip end
  61.  Endif
  62.  Which >NIL: Requestfile
  63.  If not warn
  64.   If not exists "$MODULEPATH"
  65.     Set MODULEPATH ""
  66.   Endif
  67.   Set INPUT `Requestfile title="Select Module" drawer="$MODULEPATH"`
  68.  Endif
  69. Endif
  70.  
  71. If exists "$INPUT"
  72.  Set FULLFILE `List "$INPUT" lformat "%f%n"`
  73. Else
  74.  Skip end
  75. Endif
  76.  
  77. ;--- Play Part ---
  78.  
  79. Rx Playtune.Rexx >$OUT $FULLFILE
  80. If not warn
  81.  Setenv PLAYTUNE 1
  82.  Skip end
  83. Endif
  84.  
  85. If exists ENV:deliconfig
  86.  Cd $deliconfig
  87.  Cd /
  88.  Run >NIL: DeliTracker2 module="$FULLFILE"
  89.  Setenv PLAYTUNE 1
  90.  Skip end
  91. Endif
  92.  
  93. Assign >NIL: eagleplayer2: EXISTS
  94. If not warn
  95.  Cd eagleplayer2:
  96.  Run >NIL: Eagleplayer loadmodule "$FULLFILE"
  97.  Setenv PLAYTUNE 1
  98.  Skip end
  99. Endif
  100.  
  101. If >NIL: exists "$HIPPOPATH"
  102.  Cd "$HIPPOPATH"
  103.  Run >NIL: HiP "$FULLFILE"
  104.  Setenv PLAYTUNE 1
  105.  Skip end
  106. Endif
  107.  
  108. If >NIL: not exists "$MULTI_PLAYER"
  109.  Set MULTIPLAYER `Which Multi_Player`
  110. Endif
  111. If >NIL: exists "$MULTI_PLAYER"
  112.  Run >NIL: "$MULTI_PLAYER" "$FULLFILE"
  113.  Setenv PLAYTUNE 1
  114.  Skip end
  115. Endif
  116.  
  117. If >NIL: exists "$MULTIPLAYER"
  118.  Run >NIL: "$MULTIPLAYER" PLAY="$FULLFILE"
  119.  Setenv PLAYTUNE 1
  120.  Skip end
  121. Endif
  122.  
  123. If >NIL exists "$POWERPLAYER"
  124.  Run >NIL: "$POWERPLAYER" -nr "$FULLFILE"
  125.  Setenv PLAYTUNE 1
  126.  Skip end
  127. Endif
  128. ;--- Cleanup Part ---
  129.  
  130. Lab end
  131.  Unset HIPPOPATH
  132.  Unset POWERPLAYER
  133.  Unset MULTIPLAYER
  134.  Unset MULTI_PLAYER
  135.  Unset MODULEPATH
  136.  Unset INPUT
  137.  Unset FULLFILE
  138.  Unset OUT
  139.  Cd old{$$}:
  140.  Assign old{$$}: REMOVE
  141.  Quit
  142.